Technical Field
This disclosure relates generally to integrated circuits, and, more specifically, to clock domain crossing within integrated circuits.
Description of the Related Art
Different elements (e.g., flip flops or “flops”) in an integrated circuit (“IC,” e.g., a processor) may be driven by clock signals that operate at different frequencies and/or different phases. A “clock domain crossing” occurs when a signal is transmitted from a source driven by a first clock signal to a destination driven by a second clock signal. Various problems can arise depending on the relationship of the two clock signals. For example, if the clock signals are out of phase, the destination may sample a signal before it has stabilized, creating a “metastability” problem. Furthermore, if the second clock signal has a lower clock frequency than the first clock signal, the destination may not receive all data being provided by the source. In many instances, problems of this nature are not detected until after a sample of the integrated circuit is fabricated, thus raising design costs and decreasing the speed of implementation.